package cn.kgc.spring.statik;

import cn.kgc.spring.service.TeacherService;
import cn.kgc.spring.service.impl.TeacherServiceImpl;

/**
 * @author 课工场
 * @date 2024/4/29
 * @description 创建静态代理类   TeacherService
 * 在代理类中的方法中 只编写增强业务  基础功能可以依赖被代理对象
 *
 */
public class TeacherServiceStaticProxy implements TeacherService {

    private TeacherServiceImpl  teacherService = new TeacherServiceImpl();

    @Override
    public String teachOnline(String course) {

        // 增强的业务
        System.out.println("上课时间到了，请开始上课");

        // 调用原有的业务
        String s = teacherService.teachOnline(course);

        // 增强的业务
        System.out.println("下课时间到了，请准时下课");

        return s;
    }

    @Override
    public String teachOffline(String course) {

        System.out.println("上课时间到了，请开始上课");

        String s = teacherService.teachOffline(course);

        System.out.println("下课时间到了，请准时下课");

        return s ;
    }
}
